package edu.chl.dat255.bluebanana.logic;

public interface ISound {
	/**
	 * Activates or deactivates silent mode
	 * @param isSilentMode If silent mode should be on or off.
	 */
	public void setSilentMode(boolean isSilentMode);
	/**
	 * Activates or deactivates vibrate
	 * @param isVibrate If vibrate should be on or off.
	 */
	public void setVibrate(boolean isVibrate);
	/**
	 * @param volume The new ringvlume
	 */
	public void setRingVolume(int volume);
	/**
	 * 
	 * @param ringtonePath The path to the ringtone
	 */
	public void setRingtone(String ringtonePath);
	/**
	 * 
	 * @param volume The new notification volume
	 */
	public void setNotificationVolume(int volume);
	/**
	 * 
	 * @param notificationPath The path of the notification tone.
	 */
	public void setNotificationRingtone(String notificationPath);
//	public void setRingerMode(int mode);

	/**
	 * 
	 * @return True or false whether silent mode is on or off
	 */
	public boolean isSilent();
	/**
	 * 
	 * @return True or false whether vibrate mode is on or off
	 */
	public boolean isVibrate();
	/**
	 * 
	 * @return The current ringer volume
	 */
	public int getRingVolume();
	/**
	 * 
	 * @return The current notification volume
	 */
	public int getNotificationVolume();
	/**
	 * 
	 * @return The current ringtone as a path
	 */
	public String getRingtone();
	/**
	 * 
	 * @return The current notification as a path
	 */
	public String getNotificationTone();
}
